home *** CD-ROM | disk | FTP | other *** search
MacBinary | 2000-02-25 | 7.6 KB | [TEXT/CWIE] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
66%
| dexvert
| Compact Compressed (Unix) (archive/compact)
| ext
| Supported |
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, Fri Feb 25 05:00:00 2000, modified Fri Feb 25 05:00:00 2000, creator 'CWIE', type ASCII, 7241 bytes "WETabHooks.c" , at 0x1cc9 286 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [CWIE] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 57 45 54 61 62 48 | 6f 6f 6b 73 2e 63 00 00 |..WETabH|ooks.c..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 43 57 49 | 45 00 00 00 00 00 00 00 |.TEXTCWI|E.......|
|00000050| 00 00 00 00 00 1c 49 00 | 00 01 1e b4 dc 03 20 b4 |......I.|...... .|
|00000060| dc 03 20 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.. .....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 af d8 00 00 |........|........|
|00000080| 2f 2a 0d 20 2a 09 57 45 | 54 61 62 48 6f 6f 6b 73 |/*. *.WE|TabHooks|
|00000090| 2e 63 0d 20 2a 0d 20 2a | 09 57 41 53 54 45 20 54 |.c. *. *|.WASTE T|
|000000a0| 41 42 53 20 50 41 43 4b | 41 47 45 0d 20 2a 09 48 |ABS PACK|AGE. *.H|
|000000b0| 6f 6f 6b 73 20 66 6f 72 | 20 61 64 64 69 6e 67 20 |ooks for| adding |
|000000c0| 74 61 62 20 73 75 70 70 | 6f 72 74 20 74 6f 20 57 |tab supp|ort to W|
|000000d0| 41 53 54 45 0d 20 2a 0d | 20 2a 09 57 72 69 74 74 |ASTE. *.| *.Writt|
|000000e0| 65 6e 20 62 79 3a 0d 20 | 2a 09 09 4d 61 72 6b 20 |en by:. |*..Mark |
|000000f0| 41 6c 6c 64 72 69 74 74 | 20 28 6f 72 69 67 69 6e |Alldritt| (origin|
|00000100| 61 6c 20 63 6f 64 65 29 | 0d 20 2a 09 09 44 61 6e |al code)|. *..Dan|
|00000110| 20 43 72 65 76 69 65 72 | 20 28 6c 69 6e 65 20 62 | Crevier| (line b|
|00000120| 72 65 61 6b 73 29 0d 20 | 2a 09 09 4a 6f 68 6e 20 |reaks). |*..John |
|00000130| 44 61 75 62 20 28 6d 61 | 69 6e 74 65 6e 61 6e 63 |Daub (ma|intenanc|
|00000140| 65 29 0d 20 2a 09 09 4a | 6f 6e 61 74 68 61 6e 20 |e). *..J|onathan |
|00000150| 4b 65 77 20 28 76 61 72 | 69 61 62 6c 65 2d 77 69 |Kew (var|iable-wi|
|00000160| 64 74 68 20 74 61 62 73 | 29 0d 20 2a 09 09 4d 61 |dth tabs|). *..Ma|
|00000170| 72 63 6f 20 50 69 6f 76 | 61 6e 65 6c 6c 69 20 28 |rco Piov|anelli (|
|00000180| 3f 29 0d 20 2a 09 09 42 | 65 72 74 20 53 65 6c 74 |?). *..B|ert Selt|
|00000190| 7a 65 72 20 28 68 6f 72 | 69 7a 6f 6e 74 61 6c 20 |zer (hor|izontal |
|000001a0| 73 63 72 6f 6c 6c 69 6e | 67 29 0d 20 2a 0d 20 2a |scrollin|g). *. *|
|000001b0| 2f 0d 0d 2f 2a 0d 09 50 | 6f 72 74 69 6f 6e 73 20 |/../*..P|ortions |
|000001c0| 63 6f 70 79 72 69 67 68 | 74 20 a9 20 31 39 39 38 |copyrigh|t . 1998|
|000001d0| 2d 31 39 39 39 20 62 79 | 20 41 70 70 6c 65 20 43 |-1999 by| Apple C|
|000001e0| 6f 6d 70 75 74 65 72 2c | 20 49 6e 63 2e 20 41 6c |omputer,| Inc. Al|
|000001f0| 6c 20 72 69 67 68 74 73 | 20 72 65 73 65 72 76 65 |l rights| reserve|
|00000200| 64 2e 0d 09 43 68 61 6e | 67 65 20 48 69 73 74 6f |d...Chan|ge Histo|
|00000210| 72 79 3a 0d 09 09 31 30 | 2f 32 39 2f 39 38 09 54 |ry:...10|/29/98.T|
|00000220| 57 42 09 09 5a 6f 6f 6d | 20 73 75 70 70 6f 72 74 |WB..Zoom| support|
|00000230| 2e 20 0d 2a 2f 0d 0d 23 | 69 6e 63 6c 75 64 65 20 |. .*/..#|include |
|00000240| 22 57 41 53 54 45 49 6e | 74 66 2e 68 22 0d 0d 23 |"WASTEIn|tf.h"..#|
|00000250| 69 6e 63 6c 75 64 65 20 | 22 57 45 54 61 62 73 2e |include |"WETabs.|
|00000260| 68 22 0d 23 69 6e 63 6c | 75 64 65 20 22 57 45 54 |h".#incl|ude "WET|
|00000270| 61 62 48 6f 6f 6b 73 2e | 68 22 0d 0d 23 64 65 66 |abHooks.|h"..#def|
|00000280| 69 6e 65 20 46 49 58 52 | 4f 55 4e 44 28 66 29 09 |ine FIXR|OUND(f).|
|00000290| 09 09 28 28 53 49 6e 74 | 31 36 29 20 28 28 28 66 |..((SInt|16) (((f|
|000002a0| 29 20 2b 20 30 78 30 30 | 30 30 38 30 30 30 29 20 |) + 0x00|008000) |
|000002b0| 3e 3e 20 31 36 29 29 0d | 23 64 65 66 69 6e 65 20 |>> 16)).|#define |
|000002c0| 42 53 4c 28 41 2c 20 42 | 29 09 09 09 28 28 28 53 |BSL(A, B|)...(((S|
|000002d0| 49 6e 74 33 32 29 20 28 | 41 29 29 20 3c 3c 20 28 |Int32) (|A)) << (|
|000002e0| 42 29 29 0d 0d 73 74 61 | 74 69 63 20 63 6f 6e 73 |B))..sta|tic cons|
|000002f0| 74 20 50 6f 69 6e 74 20 | 6b 4f 6e 65 54 6f 4f 6e |t Point |kOneToOn|
|00000300| 65 53 63 61 6c 69 6e 67 | 20 3d 20 7b 20 31 2c 20 |eScaling| = { 1, |
|00000310| 31 20 7d 20 3b 0d 0d 70 | 61 73 63 61 6c 20 76 6f |1 } ;..p|ascal vo|
|00000320| 69 64 20 5f 57 45 54 61 | 62 44 72 61 77 54 65 78 |id _WETa|bDrawTex|
|00000330| 74 0d 09 28 0d 09 09 50 | 74 72 20 70 54 65 78 74 |t..(...P|tr pText|
|00000340| 2c 0d 09 09 53 49 6e 74 | 33 32 20 74 65 78 74 4c |,...SInt|32 textL|
|00000350| 65 6e 67 74 68 2c 0d 09 | 09 46 69 78 65 64 20 73 |ength,..|.Fixed s|
|00000360| 6c 6f 70 2c 0d 09 09 4a | 75 73 74 53 74 79 6c 65 |lop,...J|ustStyle|
|00000370| 43 6f 64 65 20 73 74 79 | 6c 65 52 75 6e 50 6f 73 |Code sty|leRunPos|
|00000380| 69 74 69 6f 6e 2c 0d 09 | 09 57 45 52 65 66 65 72 |ition,..|.WERefer|
|00000390| 65 6e 63 65 20 77 65 0d | 09 29 0d 7b 0d 23 70 72 |ence we.|.).{.#pr|
|000003a0| 61 67 6d 61 20 75 6e 75 | 73 65 64 20 28 20 73 6c |agma unu|sed ( sl|
|000003b0| 6f 70 2c 20 73 74 79 6c | 65 52 75 6e 50 6f 73 69 |op, styl|eRunPosi|
|000003c0| 74 69 6f 6e 20 29 0d 0d | 09 4c 6f 6e 67 52 65 63 |tion )..|.LongRec|
|000003d0| 74 20 64 65 73 74 52 65 | 63 74 3b 0d 09 53 49 6e |t destRe|ct;..SIn|
|000003e0| 74 33 32 20 62 65 67 69 | 6e 43 68 61 72 20 3d 20 |t32 begi|nChar = |
|000003f0| 30 3b 0d 09 53 49 6e 74 | 33 32 20 69 69 3b 0d 09 |0;..SInt|32 ii;..|
|00000400| 53 49 6e 74 31 36 20 74 | 61 62 57 69 64 74 68 3b |SInt16 t|abWidth;|
|00000410| 0d 09 53 49 6e 74 31 36 | 20 64 65 73 74 4c 65 66 |..SInt16| destLef|
|00000420| 74 3b 0d 09 50 6f 69 6e | 74 20 70 65 6e 50 6f 73 |t;..Poin|t penPos|
|00000430| 3b 0d 09 53 49 6e 74 31 | 36 20 74 61 62 53 69 7a |;..SInt1|6 tabSiz|
|00000440| 65 20 3d 20 57 45 47 65 | 74 54 61 62 53 69 7a 65 |e = WEGe|tTabSize|
|00000450| 28 77 65 29 3b 0d 0d 23 | 69 66 20 57 41 53 54 45 |(we);..#|if WASTE|
|00000460| 5f 53 43 41 4c 45 0d 09 | 63 6f 6e 73 74 20 50 6f |_SCALE..|const Po|
|00000470| 69 6e 74 20 73 63 61 6c | 65 4e 75 6d 65 72 20 3d |int scal|eNumer =|
|00000480| 20 28 2a 77 65 29 2d 3e | 73 63 61 6c 65 4e 75 6d | (*we)->|scaleNum|
|00000490| 65 72 3b 0d 09 63 6f 6e | 73 74 20 50 6f 69 6e 74 |er;..con|st Point|
|000004a0| 20 73 63 61 6c 65 44 65 | 6e 6f 6d 20 3d 20 28 2a | scaleDe|nom = (*|
|000004b0| 77 65 29 2d 3e 73 63 61 | 6c 65 44 65 6e 6f 6d 3b |we)->sca|leDenom;|
|000004c0| 0d 23 65 6e 64 69 66 0d | 0d 09 57 45 47 65 74 44 |.#endif.|..WEGetD|
|000004d0| 65 73 74 52 65 63 74 28 | 26 64 65 73 74 52 65 63 |estRect(|&destRec|
|000004e0| 74 2c 20 77 65 29 3b 0d | 09 64 65 73 74 4c 65 66 |t, we);.|.destLef|
|000004f0| 74 20 3d 20 28 53 49 6e | 74 31 36 29 20 64 65 73 |t = (SIn|t16) des|
|00000500| 74 52 65 63 74 2e 6c 65 | 66 74 3b 0d 0d 09 66 6f |tRect.le|ft;...fo|
|00000510| 72 20 28 20 69 69 20 3d | 20 30 3b 20 69 69 20 3c |r ( ii =| 0; ii <|
|00000520| 20 74 65 78 74 4c 65 6e | 67 74 68 3b 20 69 69 2b | textLen|gth; ii+|
|00000530| 2b 20 29 0d 09 7b 0d 09 | 09 69 66 20 28 70 54 65 |+ )..{..|.if (pTe|
|00000540| 78 74 5b 69 69 5d 20 3d | 3d 20 27 5c 74 27 29 0d |xt[ii] =|= '\t').|
|00000550| 09 09 7b 0d 23 69 66 20 | 57 41 53 54 45 5f 53 43 |..{.#if |WASTE_SC|
|00000560| 41 4c 45 0d 09 09 09 44 | 72 61 77 4a 75 73 74 69 |ALE....D|rawJusti|
|00000570| 66 69 65 64 28 26 70 54 | 65 78 74 5b 62 65 67 69 |fied(&pT|ext[begi|
|00000580| 6e 43 68 61 72 5d 2c 20 | 69 69 20 2d 20 62 65 67 |nChar], |ii - beg|
|00000590| 69 6e 43 68 61 72 2c 20 | 30 2c 20 6f 6e 6c 79 53 |inChar, |0, onlyS|
|000005a0| 74 79 6c 65 52 75 6e 2c | 20 73 63 61 6c 65 4e 75 |tyleRun,| scaleNu|
|000005b0| 6d 65 72 2c 20 73 63 61 | 6c 65 44 65 6e 6f 6d 29 |mer, sca|leDenom)|
|000005c0| 3b 0d 23 65 6c 73 65 0d | 09 09 09 44 72 61 77 54 |;.#else.|...DrawT|
|000005d0| 65 78 74 28 70 54 65 78 | 74 2c 20 62 65 67 69 6e |ext(pTex|t, begin|
|000005e0| 43 68 61 72 2c 20 69 69 | 20 2d 20 62 65 67 69 6e |Char, ii| - begin|
|000005f0| 43 68 61 72 29 3b 0d 23 | 65 6e 64 69 66 0d 09 09 |Char);.#|endif...|
|00000600| 09 2f 2a 20 61 64 76 61 | 6e 63 65 20 74 68 65 20 |./* adva|nce the |
|00000610| 70 65 6e 20 74 6f 20 74 | 68 65 20 6e 65 78 74 20 |pen to t|he next |
|00000620| 74 61 62 20 73 74 6f 70 | 20 2a 2f 0d 09 09 09 47 |tab stop| */....G|
|00000630| 65 74 50 65 6e 28 26 70 | 65 6e 50 6f 73 29 3b 0d |etPen(&p|enPos);.|
|00000640| 09 09 09 74 61 62 57 69 | 64 74 68 20 3d 20 74 61 |...tabWi|dth = ta|
|00000650| 62 53 69 7a 65 20 2d 20 | 28 70 65 6e 50 6f 73 2e |bSize - |(penPos.|
|00000660| 68 20 2d 20 64 65 73 74 | 4c 65 66 74 29 20 25 20 |h - dest|Left) % |
|00000670| 74 61 62 53 69 7a 65 3b | 0d 09 09 09 4d 6f 76 65 |tabSize;|....Move|
|00000680| 54 6f 28 70 65 6e 50 6f | 73 2e 68 20 2b 20 74 61 |To(penPo|s.h + ta|
|00000690| 62 57 69 64 74 68 2c 20 | 70 65 6e 50 6f 73 2e 76 |bWidth, |penPos.v|
|000006a0| 29 3b 0d 09 09 09 62 65 | 67 69 6e 43 68 61 72 20 |);....be|ginChar |
|000006b0| 3d 20 69 69 20 2b 20 31 | 3b 0d 09 09 7d 0d 09 7d |= ii + 1|;...}..}|
|000006c0| 09 2f 2a 20 66 6f 72 20 | 2a 2f 0d 0d 23 69 66 20 |./* for |*/..#if |
|000006d0| 57 41 53 54 45 5f 53 43 | 41 4c 45 0d 09 44 72 61 |WASTE_SC|ALE..Dra|
|000006e0| 77 4a 75 73 74 69 66 69 | 65 64 28 26 70 54 65 78 |wJustifi|ed(&pTex|
|000006f0| 74 5b 62 65 67 69 6e 43 | 68 61 72 5d 2c 20 74 65 |t[beginC|har], te|
|00000700| 78 74 4c 65 6e 67 74 68 | 20 2d 20 62 65 67 69 6e |xtLength| - begin|
|00000710| 43 68 61 72 2c 20 30 2c | 20 6f 6e 6c 79 53 74 79 |Char, 0,| onlySty|
|00000720| 6c 65 52 75 6e 2c 20 73 | 63 61 6c 65 4e 75 6d 65 |leRun, s|caleNume|
|00000730| 72 2c 20 73 63 61 6c 65 | 44 65 6e 6f 6d 29 3b 0d |r, scale|Denom);.|
|00000740| 23 65 6c 73 65 0d 09 44 | 72 61 77 54 65 78 74 28 |#else..D|rawText(|
|00000750| 70 54 65 78 74 2c 20 62 | 65 67 69 6e 43 68 61 72 |pText, b|eginChar|
|00000760| 2c 20 74 65 78 74 4c 65 | 6e 67 74 68 20 2d 20 62 |, textLe|ngth - b|
|00000770| 65 67 69 6e 43 68 61 72 | 29 3b 0d 23 65 6e 64 69 |eginChar|);.#endi|
|00000780| 66 0d 7d 0d 0d 70 61 73 | 63 61 6c 20 53 49 6e 74 |f.}..pas|cal SInt|
|00000790| 33 32 20 5f 57 45 54 61 | 62 50 69 78 65 6c 54 6f |32 _WETa|bPixelTo|
|000007a0| 43 68 61 72 0d 09 28 0d | 09 09 50 74 72 20 70 54 |Char..(.|..Ptr pT|
|000007b0| 65 78 74 2c 0d 09 09 53 | 49 6e 74 33 32 20 74 65 |ext,...S|Int32 te|
|000007c0| 78 74 4c 65 6e 67 74 68 | 2c 0d 09 09 46 69 78 65 |xtLength|,...Fixe|
|000007d0| 64 20 73 6c 6f 70 2c 0d | 09 09 46 69 78 65 64 20 |d slop,.|..Fixed |
|000007e0| 2a 77 69 64 74 68 2c 0d | 09 09 57 45 45 64 67 65 |*width,.|..WEEdge|
|000007f0| 20 2a 65 64 67 65 2c 0d | 09 09 4a 75 73 74 53 74 | *edge,.|..JustSt|
|00000800| 79 6c 65 43 6f 64 65 20 | 73 74 79 6c 65 52 75 6e |yleCode |styleRun|
|00000810| 50 6f 73 69 74 69 6f 6e | 2c 0d 09 09 46 69 78 65 |Position|,...Fixe|
|00000820| 64 20 68 50 6f 73 2c 0d | 09 09 57 45 52 65 66 65 |d hPos,.|..WERefe|
|00000830| 72 65 6e 63 65 20 77 65 | 0d 09 29 0d 7b 0d 09 53 |rence we|..).{..S|
|00000840| 49 6e 74 33 32 20 62 65 | 67 69 6e 43 68 61 72 20 |Int32 be|ginChar |
|00000850| 3d 20 30 3b 0d 09 53 49 | 6e 74 33 32 20 6f 66 66 |= 0;..SI|nt32 off|
|00000860| 73 65 74 20 3d 20 30 3b | 0d 09 53 49 6e 74 33 32 |set = 0;|..SInt32|
|00000870| 20 69 69 3b 0d 09 46 69 | 78 65 64 20 6c 61 73 74 | ii;..Fi|xed last|
|00000880| 57 69 64 74 68 3b 0d 09 | 46 69 78 65 64 20 74 61 |Width;..|Fixed ta|
|00000890| 62 57 69 64 74 68 3b 0d | 09 53 49 6e 74 31 36 20 |bWidth;.|.SInt16 |
|000008a0| 74 61 62 53 69 7a 65 20 | 3d 20 57 45 47 65 74 54 |tabSize |= WEGetT|
|000008b0| 61 62 53 69 7a 65 28 77 | 65 29 3b 0d 0d 23 69 66 |abSize(w|e);..#if|
|000008c0| 20 57 41 53 54 45 5f 53 | 43 41 4c 45 0d 09 63 6f | WASTE_S|CALE..co|
|000008d0| 6e 73 74 20 50 6f 69 6e | 74 20 73 63 61 6c 65 4e |nst Poin|t scaleN|
|000008e0| 75 6d 65 72 20 3d 20 28 | 2a 77 65 29 2d 3e 73 63 |umer = (|*we)->sc|
|000008f0| 61 6c 65 4e 75 6d 65 72 | 3b 0d 09 63 6f 6e 73 74 |aleNumer|;..const|
|00000900| 20 50 6f 69 6e 74 20 73 | 63 61 6c 65 44 65 6e 6f | Point s|caleDeno|
|00000910| 6d 20 3d 20 28 2a 77 65 | 29 2d 3e 73 63 61 6c 65 |m = (*we|)->scale|
|00000920| 44 65 6e 6f 6d 3b 0d 23 | 65 6c 73 65 0d 09 63 6f |Denom;.#|else..co|
|00000930| 6e 73 74 20 50 6f 69 6e | 74 20 73 63 61 6c 65 4e |nst Poin|t scaleN|
|00000940| 75 6d 65 72 20 3d 20 6b | 4f 6e 65 54 6f 4f 6e 65 |umer = k|OneToOne|
|00000950| 53 63 61 6c 69 6e 67 3b | 0d 09 63 6f 6e 73 74 20 |Scaling;|..const |
|00000960| 50 6f 69 6e 74 20 73 63 | 61 6c 65 44 65 6e 6f 6d |Point sc|aleDenom|
|00000970| 20 3d 20 6b 4f 6e 65 54 | 6f 4f 6e 65 53 63 61 6c | = kOneT|oOneScal|
|00000980| 69 6e 67 3b 0d 23 65 6e | 64 69 66 0d 0d 09 2f 2a |ing;.#en|dif.../*|
|00000990| 20 6c 6f 6f 70 20 74 68 | 72 6f 75 67 68 20 65 76 | loop th|rough ev|
|000009a0| 65 72 79 20 63 68 61 72 | 61 63 74 65 72 20 69 6e |ery char|acter in|
|000009b0| 20 74 68 65 20 73 65 67 | 6d 65 6e 74 20 6c 6f 6f | the seg|ment loo|
|000009c0| 6b 69 6e 67 20 66 6f 72 | 20 74 61 62 73 20 2a 2f |king for| tabs */|
|000009d0| 0d 09 66 6f 72 20 28 20 | 69 69 20 3d 20 30 3b 20 |..for ( |ii = 0; |
|000009e0| 69 69 20 3c 20 74 65 78 | 74 4c 65 6e 67 74 68 3b |ii < tex|tLength;|
|000009f0| 20 69 69 2b 2b 20 29 0d | 09 7b 0d 09 09 2f 2a 20 | ii++ ).|.{.../* |
|00000a00| 65 78 69 74 20 6e 6f 77 | 20 69 66 20 77 69 64 74 |exit now| if widt|
|00000a10| 68 20 68 61 73 20 67 6f | 6e 65 20 6e 65 67 61 74 |h has go|ne negat|
|00000a20| 69 76 65 20 2a 2f 0d 09 | 09 2f 2a 20 28 69 2e 65 |ive */..|./* (i.e|
|00000a30| 2e 2c 20 69 66 20 77 65 | 20 68 61 76 65 20 66 6f |., if we| have fo|
|00000a40| 75 6e 64 20 77 68 69 63 | 68 20 67 6c 79 70 68 20 |und whic|h glyph |
|00000a50| 77 61 73 20 68 69 74 29 | 20 2a 2f 0d 09 09 69 66 |was hit)| */...if|
|00000a60| 20 28 2a 77 69 64 74 68 | 20 3c 3d 20 30 29 0d 09 | (*width| <= 0)..|
|00000a70| 09 7b 0d 09 09 09 62 72 | 65 61 6b 3b 0d 09 09 7d |.{....br|eak;...}|
|00000a80| 0d 0d 09 09 2f 2a 20 74 | 61 62 20 66 6f 75 6e 64 |..../* t|ab found|
|00000a90| 3f 20 2a 2f 0d 09 09 69 | 66 20 28 70 54 65 78 74 |? */...i|f (pText|
|00000aa0| 5b 69 69 5d 20 3d 3d 20 | 27 5c 74 27 29 0d 09 09 |[ii] == |'\t')...|
|00000ab0| 7b 0d 09 09 09 2f 2a 20 | 63 61 6c 63 75 6c 61 74 |{..../* |calculat|
|00000ac0| 65 20 74 68 65 20 77 69 | 64 74 68 20 6f 66 20 74 |e the wi|dth of t|
|00000ad0| 68 65 20 73 75 62 2d 73 | 65 67 6d 65 6e 74 20 70 |he sub-s|egment p|
|00000ae0| 72 65 63 65 64 69 6e 67 | 20 74 68 65 20 74 61 62 |receding| the tab|
|00000af0| 20 2a 2f 0d 09 09 09 6c | 61 73 74 57 69 64 74 68 | */....l|astWidth|
|00000b00| 20 3d 20 2a 77 69 64 74 | 68 3b 0d 09 09 09 6f 66 | = *widt|h;....of|
|00000b10| 66 73 65 74 20 2b 3d 20 | 50 69 78 65 6c 54 6f 43 |fset += |PixelToC|
|00000b20| 68 61 72 28 70 54 65 78 | 74 20 2b 20 62 65 67 69 |har(pTex|t + begi|
|00000b30| 6e 43 68 61 72 2c 20 69 | 69 20 2d 20 62 65 67 69 |nChar, i|i - begi|
|00000b40| 6e 43 68 61 72 2c 20 73 | 6c 6f 70 2c 0d 09 09 09 |nChar, s|lop,....|
|00000b50| 09 09 6c 61 73 74 57 69 | 64 74 68 2c 20 28 42 6f |..lastWi|dth, (Bo|
|00000b60| 6f 6c 65 61 6e 20 2a 29 | 20 65 64 67 65 2c 20 77 |olean *)| edge, w|
|00000b70| 69 64 74 68 2c 20 73 74 | 79 6c 65 52 75 6e 50 6f |idth, st|yleRunPo|
|00000b80| 73 69 74 69 6f 6e 2c 0d | 09 09 09 09 09 73 63 61 |sition,.|.....sca|
|00000b90| 6c 65 4e 75 6d 65 72 2c | 20 73 63 61 6c 65 44 65 |leNumer,| scaleDe|
|00000ba0| 6e 6f 6d 29 3b 0d 09 09 | 09 62 65 67 69 6e 43 68 |nom);...|.beginCh|
|00000bb0| 61 72 20 3d 20 69 69 20 | 2b 20 31 3b 0d 0d 09 09 |ar = ii |+ 1;....|
|00000bc0| 09 2f 2a 20 68 69 74 20 | 70 6f 69 6e 74 20 70 61 |./* hit |point pa|
|00000bd0| 73 74 20 73 75 62 2d 73 | 65 67 6d 65 6e 74 3f 20 |st sub-s|egment? |
|00000be0| 2a 2f 0d 09 09 09 69 66 | 20 28 2a 77 69 64 74 68 |*/....if| (*width|
|00000bf0| 20 3e 3d 20 30 29 0d 09 | 09 09 7b 0d 09 09 09 09 | >= 0)..|..{.....|
|00000c00| 2f 2a 20 69 6e 63 72 65 | 6d 65 6e 74 20 68 50 6f |/* incre|ment hPo|
|00000c10| 73 20 62 79 20 77 69 64 | 74 68 20 6f 66 20 73 75 |s by wid|th of su|
|00000c20| 62 2d 73 65 67 6d 65 6e | 74 20 70 72 65 63 65 64 |b-segmen|t preced|
|00000c30| 69 6e 67 20 74 68 65 20 | 74 61 62 20 2a 2f 0d 09 |ing the |tab */..|
|00000c40| 09 09 09 68 50 6f 73 20 | 2b 3d 20 28 6c 61 73 74 |...hPos |+= (last|
|00000c50| 57 69 64 74 68 20 2d 20 | 2a 77 69 64 74 68 29 3b |Width - |*width);|
|00000c60| 0d 0d 09 09 09 09 2f 2a | 20 63 61 6c 63 75 6c 61 |....../*| calcula|
|00000c70| 74 65 20 74 68 65 20 77 | 69 64 74 68 20 6f 66 20 |te the w|idth of |
|00000c80| 74 68 65 20 74 61 62 20 | 22 67 6c 79 70 68 22 20 |the tab |"glyph" |
|00000c90| 28 61 73 20 61 20 46 69 | 78 65 64 20 76 61 6c 75 |(as a Fi|xed valu|
|00000ca0| 65 29 20 2a 2f 0d 09 09 | 09 09 74 61 62 57 69 64 |e) */...|..tabWid|
|00000cb0| 74 68 20 3d 20 42 53 4c | 28 74 61 62 53 69 7a 65 |th = BSL|(tabSize|
|00000cc0| 20 2d 20 46 49 58 52 4f | 55 4e 44 28 68 50 6f 73 | - FIXRO|UND(hPos|
|00000cd0| 29 20 25 20 74 61 62 53 | 69 7a 65 2c 20 31 36 29 |) % tabS|ize, 16)|
|00000ce0| 3b 0d 0d 09 09 09 09 2f | 2a 20 69 6e 63 72 65 6d |;....../|* increm|
|00000cf0| 65 6e 74 20 68 50 6f 73 | 20 62 79 20 77 69 64 74 |ent hPos| by widt|
|00000d00| 68 20 6f 66 20 74 61 62 | 20 63 68 61 72 61 63 74 |h of tab| charact|
|00000d10| 65 72 20 2a 2f 0d 09 09 | 09 09 68 50 6f 73 20 2b |er */...|..hPos +|
|00000d20| 3d 20 74 61 62 57 69 64 | 74 68 3b 0d 0d 09 09 09 |= tabWid|th;.....|
|00000d30| 09 2f 2a 20 68 69 74 20 | 70 6f 69 6e 74 20 77 69 |./* hit |point wi|
|00000d40| 74 68 69 6e 20 74 61 62 | 20 67 6c 79 70 68 3f 20 |thin tab| glyph? |
|00000d50| 2a 2f 0d 09 09 09 09 69 | 66 20 28 2a 77 69 64 74 |*/.....i|f (*widt|
|00000d60| 68 20 3c 20 74 61 62 57 | 69 64 74 68 29 0d 09 09 |h < tabW|idth)...|
|00000d70| 09 09 7b 0d 09 09 09 09 | 09 2f 2a 20 79 65 73 3a |..{.....|./* yes:|
|00000d80| 20 64 65 74 65 72 6d 69 | 6e 65 20 77 68 69 63 68 | determi|ne which|
|00000d90| 20 68 61 6c 66 20 6f 66 | 20 74 61 62 20 67 6c 79 | half of| tab gly|
|00000da0| 70 68 20 77 61 73 20 68 | 69 74 20 2a 2f 0d 09 09 |ph was h|it */...|
|00000db0| 09 09 09 69 66 20 28 2a | 77 69 64 74 68 20 3e 20 |...if (*|width > |
|00000dc0| 28 74 61 62 57 69 64 74 | 68 20 3e 3e 20 31 29 29 |(tabWidt|h >> 1))|
|00000dd0| 0d 09 09 09 09 09 7b 0d | 09 09 09 09 09 09 2a 65 |......{.|......*e|
|00000de0| 64 67 65 20 3d 20 6b 54 | 72 61 69 6c 69 6e 67 45 |dge = kT|railingE|
|00000df0| 64 67 65 3b 09 2f 2a 20 | 73 65 63 6f 6e 64 20 28 |dge;./* |second (|
|00000e00| 74 72 61 69 6c 69 6e 67 | 29 20 65 64 67 65 20 6f |trailing|) edge o|
|00000e10| 66 20 74 61 62 20 2a 2f | 0d 09 09 09 09 09 09 6f |f tab */|.......o|
|00000e20| 66 66 73 65 74 2b 2b 3b | 0d 09 09 09 09 09 7d 0d |ffset++;|......}.|
|00000e30| 09 09 09 09 09 65 6c 73 | 65 0d 09 09 09 09 09 7b |.....els|e......{|
|00000e40| 0d 09 09 09 09 09 09 2a | 65 64 67 65 20 3d 20 6b |.......*|edge = k|
|00000e50| 4c 65 61 64 69 6e 67 45 | 64 67 65 3b 09 2f 2a 20 |LeadingE|dge;./* |
|00000e60| 66 69 72 73 74 20 28 6c | 65 61 64 69 6e 67 29 20 |first (l|eading) |
|00000e70| 65 64 67 65 20 6f 66 20 | 74 61 62 20 2a 2f 0d 09 |edge of |tab */..|
|00000e80| 09 09 09 09 7d 0d 0d 09 | 09 09 09 09 2f 2a 20 72 |....}...|..../* r|
|00000e90| 65 74 75 72 6e 69 6e 67 | 20 2d 31 20 28 61 73 20 |eturning| -1 (as |
|00000ea0| 46 69 78 65 64 29 20 69 | 6e 20 77 69 64 74 68 20 |Fixed) i|n width |
|00000eb0| 6d 65 61 6e 73 20 77 65 | 27 72 65 20 66 69 6e 69 |means we|'re fini|
|00000ec0| 73 68 65 64 20 2a 2f 0d | 09 09 09 09 09 2a 77 69 |shed */.|.....*wi|
|00000ed0| 64 74 68 20 3d 20 30 78 | 46 46 46 46 30 30 30 30 |dth = 0x|FFFF0000|
|00000ee0| 3b 0d 09 09 09 09 7d 0d | 09 09 09 09 65 6c 73 65 |;.....}.|....else|
|00000ef0| 0d 09 09 09 09 7b 0d 09 | 09 09 09 09 2f 2a 20 68 |.....{..|..../* h|
|00000f00| 69 74 20 70 6f 69 6e 74 | 20 69 73 20 70 61 73 74 |it point| is past|
|00000f10| 20 74 61 62 3a 20 6b 65 | 65 70 20 6c 6f 6f 70 69 | tab: ke|ep loopi|
|00000f20| 6e 67 20 2a 2f 0d 09 09 | 09 09 09 6f 66 66 73 65 |ng */...|...offse|
|00000f30| 74 2b 2b 3b 0d 09 09 09 | 09 09 2a 77 69 64 74 68 |t++;....|..*width|
|00000f40| 20 2d 3d 20 74 61 62 57 | 69 64 74 68 3b 0d 09 09 | -= tabW|idth;...|
|00000f50| 09 09 7d 0d 09 09 09 7d | 20 2f 2a 20 69 66 20 28 |..}....}| /* if (|
|00000f60| 2a 77 69 64 74 68 20 3e | 3d 20 30 29 20 2a 2f 0d |*width >|= 0) */.|
|00000f70| 09 09 7d 20 2f 2a 20 69 | 66 20 74 61 62 20 66 6f |..} /* i|f tab fo|
|00000f80| 75 6e 64 20 2a 2f 0d 09 | 7d 20 2f 2a 20 66 6f 72 |und */..|} /* for|
|00000f90| 20 2a 2f 0d 0d 09 2f 2a | 20 6e 6f 20 6d 6f 72 65 | */.../*| no more|
|00000fa0| 20 74 61 62 73 20 69 6e | 20 74 68 69 73 20 73 65 | tabs in| this se|
|00000fb0| 67 6d 65 6e 74 3a 20 70 | 72 6f 63 65 73 73 20 74 |gment: p|rocess t|
|00000fc0| 68 65 20 6c 61 73 74 20 | 73 75 62 2d 73 65 67 6d |he last |sub-segm|
|00000fd0| 65 6e 74 20 2a 2f 0d 09 | 69 66 20 28 2a 77 69 64 |ent */..|if (*wid|
|00000fe0| 74 68 20 3e 3d 20 30 29 | 0d 09 7b 0d 09 09 6c 61 |th >= 0)|..{...la|
|00000ff0| 73 74 57 69 64 74 68 20 | 3d 20 2a 77 69 64 74 68 |stWidth |= *width|
|00001000| 3b 0d 09 09 6f 66 66 73 | 65 74 20 2b 3d 20 50 69 |;...offs|et += Pi|
|00001010| 78 65 6c 54 6f 43 68 61 | 72 28 70 54 65 78 74 20 |xelToCha|r(pText |
|00001020| 2b 20 62 65 67 69 6e 43 | 68 61 72 2c 20 74 65 78 |+ beginC|har, tex|
|00001030| 74 4c 65 6e 67 74 68 20 | 2d 20 62 65 67 69 6e 43 |tLength |- beginC|
|00001040| 68 61 72 2c 20 73 6c 6f | 70 2c 0d 09 09 09 09 09 |har, slo|p,......|
|00001050| 6c 61 73 74 57 69 64 74 | 68 2c 20 28 42 6f 6f 6c |lastWidt|h, (Bool|
|00001060| 65 61 6e 20 2a 29 20 65 | 64 67 65 2c 20 77 69 64 |ean *) e|dge, wid|
|00001070| 74 68 2c 20 73 74 79 6c | 65 52 75 6e 50 6f 73 69 |th, styl|eRunPosi|
|00001080| 74 69 6f 6e 2c 0d 09 09 | 09 09 09 73 63 61 6c 65 |tion,...|...scale|
|00001090| 4e 75 6d 65 72 2c 20 73 | 63 61 6c 65 44 65 6e 6f |Numer, s|caleDeno|
|000010a0| 6d 29 3b 0d 09 7d 0d 0d | 09 2f 2a 20 72 6f 75 6e |m);..}..|./* roun|
|000010b0| 64 20 77 69 64 74 68 20 | 74 6f 20 6e 65 61 72 65 |d width |to neare|
|000010c0| 73 74 20 69 6e 74 65 67 | 65 72 20 76 61 6c 75 65 |st integ|er value|
|000010d0| 20 2a 2f 0d 09 2f 2a 20 | 74 68 69 73 20 69 73 20 | */../* |this is |
|000010e0| 73 75 70 70 6f 73 65 64 | 20 74 6f 20 66 69 78 20 |supposed| to fix |
|000010f0| 61 6e 20 69 6e 63 6f 6d | 70 61 74 69 62 69 6c 69 |an incom|patibili|
|00001100| 74 79 20 77 69 74 68 20 | 74 68 65 20 57 6f 72 6c |ty with |the Worl|
|00001110| 64 53 63 72 69 70 74 20 | 50 6f 77 65 72 20 41 64 |dScript |Power Ad|
|00001120| 61 70 74 65 72 20 2a 2f | 0d 09 2a 77 69 64 74 68 |apter */|..*width|
|00001130| 20 3d 20 28 2a 77 69 64 | 74 68 20 2b 20 30 78 30 | = (*wid|th + 0x0|
|00001140| 30 30 30 38 30 30 30 29 | 20 26 20 30 78 46 46 46 |0008000)| & 0xFFF|
|00001150| 46 30 30 30 30 3b 0d 0d | 09 72 65 74 75 72 6e 20 |F0000;..|.return |
|00001160| 6f 66 66 73 65 74 3b 0d | 7d 0d 0d 70 61 73 63 61 |offset;.|}..pasca|
|00001170| 6c 20 53 49 6e 74 31 36 | 20 5f 57 45 54 61 62 43 |l SInt16| _WETabC|
|00001180| 68 61 72 54 6f 50 69 78 | 65 6c 0d 09 28 0d 09 09 |harToPix|el..(...|
|00001190| 50 74 72 20 70 54 65 78 | 74 2c 0d 09 09 53 49 6e |Ptr pTex|t,...SIn|
|000011a0| 74 33 32 20 74 65 78 74 | 4c 65 6e 67 74 68 2c 0d |t32 text|Length,.|
|000011b0| 09 09 46 69 78 65 64 20 | 73 6c 6f 70 2c 0d 09 09 |..Fixed |slop,...|
|000011c0| 53 49 6e 74 33 32 20 6f | 66 66 73 65 74 2c 0d 09 |SInt32 o|ffset,..|
|000011d0| 09 53 49 6e 74 31 36 20 | 64 69 72 65 63 74 69 6f |.SInt16 |directio|
|000011e0| 6e 2c 0d 09 09 4a 75 73 | 74 53 74 79 6c 65 43 6f |n,...Jus|tStyleCo|
|000011f0| 64 65 20 73 74 79 6c 65 | 52 75 6e 50 6f 73 69 74 |de style|RunPosit|
|00001200| 69 6f 6e 2c 0d 09 09 53 | 49 6e 74 31 36 20 68 50 |ion,...S|Int16 hP|
|00001210| 6f 73 2c 0d 09 09 57 45 | 52 65 66 65 72 65 6e 63 |os,...WE|Referenc|
|00001220| 65 20 77 65 0d 09 29 0d | 7b 0d 09 4c 6f 6e 67 52 |e we..).|{..LongR|
|00001230| 65 63 74 20 64 65 73 74 | 52 65 63 74 3b 0d 09 53 |ect dest|Rect;..S|
|00001240| 49 6e 74 33 32 20 62 65 | 67 69 6e 43 68 61 72 20 |Int32 be|ginChar |
|00001250| 3d 20 30 3b 0d 09 53 49 | 6e 74 33 32 20 69 69 3b |= 0;..SI|nt32 ii;|
|00001260| 0d 09 53 49 6e 74 31 36 | 20 77 69 64 74 68 3b 0d |..SInt16| width;.|
|00001270| 09 53 49 6e 74 31 36 20 | 64 65 73 74 4c 65 66 74 |.SInt16 |destLeft|
|00001280| 3b 0d 09 53 49 6e 74 31 | 36 20 74 6f 74 61 6c 57 |;..SInt1|6 totalW|
|00001290| 69 64 74 68 20 3d 20 30 | 3b 0d 09 53 49 6e 74 31 |idth = 0|;..SInt1|
|000012a0| 36 20 74 61 62 53 69 7a | 65 20 3d 20 57 45 47 65 |6 tabSiz|e = WEGe|
|000012b0| 74 54 61 62 53 69 7a 65 | 28 77 65 29 3b 0d 0d 23 |tTabSize|(we);..#|
|000012c0| 69 66 20 57 41 53 54 45 | 5f 53 43 41 4c 45 0d 09 |if WASTE|_SCALE..|
|000012d0| 63 6f 6e 73 74 20 50 6f | 69 6e 74 20 73 63 61 6c |const Po|int scal|
|000012e0| 65 4e 75 6d 65 72 20 3d | 20 28 2a 77 65 29 2d 3e |eNumer =| (*we)->|
|000012f0| 73 63 61 6c 65 4e 75 6d | 65 72 3b 0d 09 63 6f 6e |scaleNum|er;..con|
|00001300| 73 74 20 50 6f 69 6e 74 | 20 73 63 61 6c 65 44 65 |st Point| scaleDe|
|00001310| 6e 6f 6d 20 3d 20 28 2a | 77 65 29 2d 3e 73 63 61 |nom = (*|we)->sca|
|00001320| 6c 65 44 65 6e 6f 6d 3b | 0d 23 65 6c 73 65 0d 09 |leDenom;|.#else..|
|00001330| 63 6f 6e 73 74 20 50 6f | 69 6e 74 20 73 63 61 6c |const Po|int scal|
|00001340| 65 4e 75 6d 65 72 20 3d | 20 6b 4f 6e 65 54 6f 4f |eNumer =| kOneToO|
|00001350| 6e 65 53 63 61 6c 69 6e | 67 3b 0d 09 63 6f 6e 73 |neScalin|g;..cons|
|00001360| 74 20 50 6f 69 6e 74 20 | 73 63 61 6c 65 44 65 6e |t Point |scaleDen|
|00001370| 6f 6d 20 3d 20 6b 4f 6e | 65 54 6f 4f 6e 65 53 63 |om = kOn|eToOneSc|
|00001380| 61 6c 69 6e 67 3b 0d 23 | 65 6e 64 69 66 0d 0d 09 |aling;.#|endif...|
|00001390| 57 45 47 65 74 44 65 73 | 74 52 65 63 74 28 26 64 |WEGetDes|tRect(&d|
|000013a0| 65 73 74 52 65 63 74 2c | 20 77 65 29 3b 0d 09 64 |estRect,| we);..d|
|000013b0| 65 73 74 4c 65 66 74 20 | 3d 20 28 53 49 6e 74 31 |estLeft |= (SInt1|
|000013c0| 36 29 20 64 65 73 74 52 | 65 63 74 2e 6c 65 66 74 |6) destR|ect.left|
|000013d0| 3b 0d 0d 09 2f 2a 20 6d | 65 61 73 75 72 65 20 74 |;.../* m|easure t|
|000013e0| 65 78 74 20 75 70 20 74 | 6f 20 6f 66 66 73 65 74 |ext up t|o offset|
|000013f0| 2c 20 69 66 20 6f 66 66 | 73 65 74 20 69 73 20 77 |, if off|set is w|
|00001400| 69 74 68 69 6e 20 74 68 | 69 73 20 73 65 67 6d 65 |ithin th|is segme|
|00001410| 6e 74 2c 0d 09 09 6f 74 | 68 65 72 77 69 73 65 20 |nt,...ot|herwise |
|00001420| 74 6f 20 74 65 78 74 4c | 65 6e 67 74 68 20 2a 2f |to textL|ength */|
|00001430| 0d 09 69 66 20 28 6f 66 | 66 73 65 74 20 3e 20 74 |..if (of|fset > t|
|00001440| 65 78 74 4c 65 6e 67 74 | 68 29 0d 09 7b 0d 09 09 |extLengt|h)..{...|
|00001450| 6f 66 66 73 65 74 20 3d | 20 74 65 78 74 4c 65 6e |offset =| textLen|
|00001460| 67 74 68 3b 0d 09 7d 0d | 0d 09 66 6f 72 20 28 20 |gth;..}.|..for ( |
|00001470| 69 69 20 3d 20 30 3b 20 | 69 69 20 3c 20 6f 66 66 |ii = 0; |ii < off|
|00001480| 73 65 74 3b 20 69 69 2b | 2b 20 29 0d 09 7b 0d 09 |set; ii+|+ )..{..|
|00001490| 09 69 66 20 28 70 54 65 | 78 74 5b 69 69 5d 20 3d |.if (pTe|xt[ii] =|
|000014a0| 3d 20 27 5c 74 27 29 0d | 09 09 7b 0d 09 09 09 2f |= '\t').|..{..../|
|000014b0| 2a 20 63 61 6c 63 75 6c | 61 74 65 20 74 68 65 20 |* calcul|ate the |
|000014c0| 70 69 78 65 6c 20 77 69 | 64 74 68 20 6f 66 20 74 |pixel wi|dth of t|
|000014d0| 68 65 20 73 75 62 73 65 | 67 6d 65 6e 74 20 70 72 |he subse|gment pr|
|000014e0| 65 63 65 64 69 6e 67 20 | 74 68 65 20 74 61 62 20 |eceding |the tab |
|000014f0| 2a 2f 0d 09 09 09 77 69 | 64 74 68 20 3d 20 54 65 |*/....wi|dth = Te|
|00001500| 78 74 57 69 64 74 68 28 | 70 54 65 78 74 2c 20 62 |xtWidth(|pText, b|
|00001510| 65 67 69 6e 43 68 61 72 | 2c 20 69 69 20 2d 20 62 |eginChar|, ii - b|
|00001520| 65 67 69 6e 43 68 61 72 | 29 3b 0d 09 09 09 74 6f |eginChar|);....to|
|00001530| 74 61 6c 57 69 64 74 68 | 20 2b 3d 20 77 69 64 74 |talWidth| += widt|
|00001540| 68 3b 0d 09 09 09 68 50 | 6f 73 20 2b 3d 20 77 69 |h;....hP|os += wi|
|00001550| 64 74 68 3b 0d 0d 09 09 | 09 2f 2a 20 63 61 6c 63 |dth;....|./* calc|
|00001560| 75 6c 61 74 65 20 74 61 | 62 20 77 69 64 74 68 20 |ulate ta|b width |
|00001570| 2a 2f 0d 09 09 09 77 69 | 64 74 68 20 3d 20 74 61 |*/....wi|dth = ta|
|00001580| 62 53 69 7a 65 20 2d 20 | 28 68 50 6f 73 20 2d 20 |bSize - |(hPos - |
|00001590| 64 65 73 74 4c 65 66 74 | 29 20 25 20 74 61 62 53 |destLeft|) % tabS|
|000015a0| 69 7a 65 3b 0d 09 09 09 | 74 6f 74 61 6c 57 69 64 |ize;....|totalWid|
|000015b0| 74 68 20 2b 3d 20 77 69 | 64 74 68 3b 0d 09 09 09 |th += wi|dth;....|
|000015c0| 68 50 6f 73 20 2b 3d 20 | 77 69 64 74 68 3b 0d 0d |hPos += |width;..|
|000015d0| 09 09 09 2f 2a 20 67 6f | 20 74 6f 20 6e 65 78 74 |.../* go| to next|
|000015e0| 20 73 75 62 73 65 67 6d | 65 6e 74 20 2a 2f 0d 09 | subsegm|ent */..|
|000015f0| 09 09 62 65 67 69 6e 43 | 68 61 72 20 3d 20 69 69 |..beginC|har = ii|
|00001600| 20 2b 20 31 3b 0d 09 09 | 7d 0d 09 7d 20 2f 2a 20 | + 1;...|}..} /* |
|00001610| 66 6f 72 20 2a 2f 0d 0d | 09 2f 2a 20 63 61 6c 63 |for */..|./* calc|
|00001620| 75 6c 61 74 65 20 77 69 | 64 74 68 20 6f 66 20 72 |ulate wi|dth of r|
|00001630| 65 6d 61 69 6e 69 6e 67 | 20 63 68 61 72 61 63 74 |emaining| charact|
|00001640| 65 72 73 20 2a 2f 0d 09 | 77 69 64 74 68 20 3d 20 |ers */..|width = |
|00001650| 43 68 61 72 54 6f 50 69 | 78 65 6c 28 70 54 65 78 |CharToPi|xel(pTex|
|00001660| 74 20 2b 20 62 65 67 69 | 6e 43 68 61 72 2c 20 74 |t + begi|nChar, t|
|00001670| 65 78 74 4c 65 6e 67 74 | 68 20 2d 20 62 65 67 69 |extLengt|h - begi|
|00001680| 6e 43 68 61 72 2c 20 73 | 6c 6f 70 2c 0d 09 09 09 |nChar, s|lop,....|
|00001690| 09 09 09 6f 66 66 73 65 | 74 20 2d 20 62 65 67 69 |...offse|t - begi|
|000016a0| 6e 43 68 61 72 2c 20 64 | 69 72 65 63 74 69 6f 6e |nChar, d|irection|
|000016b0| 2c 20 73 74 79 6c 65 52 | 75 6e 50 6f 73 69 74 69 |, styleR|unPositi|
|000016c0| 6f 6e 2c 0d 09 09 09 09 | 09 09 73 63 61 6c 65 4e |on,.....|..scaleN|
|000016d0| 75 6d 65 72 2c 20 73 63 | 61 6c 65 44 65 6e 6f 6d |umer, sc|aleDenom|
|000016e0| 29 3b 0d 09 74 6f 74 61 | 6c 57 69 64 74 68 20 2b |);..tota|lWidth +|
|000016f0| 3d 20 77 69 64 74 68 3b | 0d 0d 09 72 65 74 75 72 |= width;|...retur|
|00001700| 6e 20 74 6f 74 61 6c 57 | 69 64 74 68 3b 0d 7d 0d |n totalW|idth;.}.|
|00001710| 0d 70 61 73 63 61 6c 20 | 53 74 79 6c 65 64 4c 69 |.pascal |StyledLi|
|00001720| 6e 65 42 72 65 61 6b 43 | 6f 64 65 20 5f 57 45 54 |neBreakC|ode _WET|
|00001730| 61 62 4c 69 6e 65 42 72 | 65 61 6b 0d 09 28 0d 09 |abLineBr|eak..(..|
|00001740| 09 50 74 72 20 70 54 65 | 78 74 2c 0d 09 09 53 49 |.Ptr pTe|xt,...SI|
|00001750| 6e 74 33 32 20 74 65 78 | 74 4c 65 6e 67 74 68 2c |nt32 tex|tLength,|
|00001760| 0d 09 09 53 49 6e 74 33 | 32 20 74 65 78 74 53 74 |...SInt3|2 textSt|
|00001770| 61 72 74 2c 0d 09 09 53 | 49 6e 74 33 32 20 74 65 |art,...S|Int32 te|
|00001780| 78 74 45 6e 64 2c 0d 09 | 09 46 69 78 65 64 20 2a |xtEnd,..|.Fixed *|
|00001790| 74 65 78 74 57 69 64 74 | 68 2c 0d 09 09 53 49 6e |textWidt|h,...SIn|
|000017a0| 74 33 32 20 2a 74 65 78 | 74 4f 66 66 73 65 74 2c |t32 *tex|tOffset,|
|000017b0| 0d 09 09 57 45 52 65 66 | 65 72 65 6e 63 65 20 77 |...WERef|erence w|
|000017c0| 65 0d 09 29 0d 7b 0d 09 | 4c 6f 6e 67 52 65 63 74 |e..).{..|LongRect|
|000017d0| 20 64 65 73 74 52 65 63 | 74 3b 0d 09 53 49 6e 74 | destRec|t;..SInt|
|000017e0| 33 32 20 62 65 67 69 6e | 43 68 61 72 20 3d 20 74 |32 begin|Char = t|
|000017f0| 65 78 74 53 74 61 72 74 | 3b 0d 09 53 49 6e 74 33 |extStart|;..SInt3|
|00001800| 32 20 69 69 3b 0d 09 46 | 69 78 65 64 20 74 61 62 |2 ii;..F|ixed tab|
|00001810| 57 69 64 74 68 3b 0d 09 | 53 49 6e 74 31 36 20 64 |Width;..|SInt16 d|
|00001820| 65 73 74 57 69 64 74 68 | 3b 0d 09 53 74 79 6c 65 |estWidth|;..Style|
|00001830| 64 4c 69 6e 65 42 72 65 | 61 6b 43 6f 64 65 20 62 |dLineBre|akCode b|
|00001840| 72 65 61 6b 43 6f 64 65 | 20 3d 20 73 6d 42 72 65 |reakCode| = smBre|
|00001850| 61 6b 4f 76 65 72 66 6c | 6f 77 3b 0d 09 53 49 6e |akOverfl|ow;..SIn|
|00001860| 74 31 36 20 74 61 62 53 | 69 7a 65 20 3d 20 57 45 |t16 tabS|ize = WE|
|00001870| 47 65 74 54 61 62 53 69 | 7a 65 28 77 65 29 3b 0d |GetTabSi|ze(we);.|
|00001880| 0d 09 57 45 47 65 74 44 | 65 73 74 52 65 63 74 28 |..WEGetD|estRect(|
|00001890| 26 64 65 73 74 52 65 63 | 74 2c 20 77 65 29 3b 0d |&destRec|t, we);.|
|000018a0| 09 64 65 73 74 57 69 64 | 74 68 20 3d 20 28 53 49 |.destWid|th = (SI|
|000018b0| 6e 74 31 36 29 20 28 64 | 65 73 74 52 65 63 74 2e |nt16) (d|estRect.|
|000018c0| 72 69 67 68 74 20 2d 20 | 64 65 73 74 52 65 63 74 |right - |destRect|
|000018d0| 2e 6c 65 66 74 29 3b 0d | 0d 09 66 6f 72 20 28 20 |.left);.|..for ( |
|000018e0| 69 69 20 3d 20 74 65 78 | 74 53 74 61 72 74 3b 20 |ii = tex|tStart; |
|000018f0| 69 69 20 3c 20 74 65 78 | 74 45 6e 64 3b 20 69 69 |ii < tex|tEnd; ii|
|00001900| 2b 2b 20 29 0d 09 7b 0d | 09 09 69 66 20 28 70 54 |++ )..{.|..if (pT|
|00001910| 65 78 74 5b 69 69 5d 20 | 3d 3d 20 30 78 30 44 29 |ext[ii] |== 0x0D)|
|00001920| 0d 09 09 7b 0d 09 09 09 | 2f 2a 20 66 6f 75 6e 64 |...{....|/* found|
|00001930| 20 61 20 3c 72 65 74 75 | 72 6e 3e 2c 20 73 6f 20 | a <retu|rn>, so |
|00001940| 73 74 6f 70 20 6c 6f 6f | 6b 69 6e 67 20 61 68 65 |stop loo|king ahe|
|00001950| 61 64 20 66 6f 72 20 74 | 61 62 73 20 2a 2f 0d 09 |ad for t|abs */..|
|00001960| 09 09 69 69 2b 2b 3b 0d | 09 09 09 62 72 65 61 6b |..ii++;.|...break|
|00001970| 3b 0d 09 09 7d 0d 09 09 | 69 66 20 28 70 54 65 78 |;...}...|if (pTex|
|00001980| 74 5b 69 69 5d 20 3d 3d | 20 27 5c 74 27 29 0d 09 |t[ii] ==| '\t')..|
|00001990| 09 7b 0d 09 09 09 2f 2a | 20 64 6f 20 70 72 65 76 |.{..../*| do prev|
|000019a0| 69 6f 75 73 20 22 73 65 | 67 6d 65 6e 74 22 20 2a |ious "se|gment" *|
|000019b0| 2f 0d 09 09 09 62 72 65 | 61 6b 43 6f 64 65 20 3d |/....bre|akCode =|
|000019c0| 20 53 74 79 6c 65 64 4c | 69 6e 65 42 72 65 61 6b | StyledL|ineBreak|
|000019d0| 28 70 54 65 78 74 2c 20 | 74 65 78 74 4c 65 6e 67 |(pText, |textLeng|
|000019e0| 74 68 2c 20 62 65 67 69 | 6e 43 68 61 72 2c 20 69 |th, begi|nChar, i|
|000019f0| 69 2c 20 30 2c 20 74 65 | 78 74 57 69 64 74 68 2c |i, 0, te|xtWidth,|
|00001a00| 20 74 65 78 74 4f 66 66 | 73 65 74 29 3b 0d 09 09 | textOff|set);...|
|00001a10| 09 69 66 20 28 28 62 72 | 65 61 6b 43 6f 64 65 20 |.if ((br|eakCode |
|00001a20| 21 3d 20 73 6d 42 72 65 | 61 6b 4f 76 65 72 66 6c |!= smBre|akOverfl|
|00001a30| 6f 77 29 20 7c 7c 20 28 | 69 69 20 3e 3d 20 74 65 |ow) || (|ii >= te|
|00001a40| 78 74 4c 65 6e 67 74 68 | 29 29 0d 09 09 09 7b 0d |xtLength|))....{.|
|00001a50| 09 09 09 09 62 72 65 61 | 6b 3b 0d 09 09 09 7d 0d |....brea|k;....}.|
|00001a60| 09 09 09 62 65 67 69 6e | 43 68 61 72 20 3d 20 69 |...begin|Char = i|
|00001a70| 69 20 2b 20 31 3b 0d 0d | 09 09 09 2f 2a 20 63 61 |i + 1;..|.../* ca|
|00001a80| 6c 63 75 6c 61 74 65 20 | 74 61 62 20 77 69 64 74 |lculate |tab widt|
|00001a90| 68 20 28 61 73 20 61 20 | 46 69 78 65 64 20 76 61 |h (as a |Fixed va|
|00001aa0| 6c 75 65 29 20 2a 2f 0d | 09 09 09 74 61 62 57 69 |lue) */.|...tabWi|
|00001ab0| 64 74 68 20 3d 20 42 53 | 4c 28 74 61 62 53 69 7a |dth = BS|L(tabSiz|
|00001ac0| 65 20 2d 20 28 64 65 73 | 74 57 69 64 74 68 20 2d |e - (des|tWidth -|
|00001ad0| 20 46 49 58 52 4f 55 4e | 44 28 2a 74 65 78 74 57 | FIXROUN|D(*textW|
|00001ae0| 69 64 74 68 29 29 20 25 | 20 74 61 62 53 69 7a 65 |idth)) %| tabSize|
|00001af0| 2c 20 31 36 29 3b 0d 0d | 09 09 09 2f 2a 20 69 66 |, 16);..|.../* if|
|00001b00| 20 74 61 62 57 69 64 74 | 68 20 3e 20 70 69 78 65 | tabWidt|h > pixe|
|00001b10| 6c 57 69 64 74 68 20 77 | 65 20 62 72 65 61 6b 20 |lWidth w|e break |
|00001b20| 69 6e 20 74 61 62 20 2a | 2f 0d 09 09 09 2f 2a 20 |in tab *|/..../* |
|00001b30| 64 6f 6e 27 74 20 6d 6f | 76 65 20 74 61 62 20 74 |don't mo|ve tab t|
|00001b40| 6f 20 6e 65 78 74 20 6c | 69 6e 65 20 2a 2f 0d 09 |o next l|ine */..|
|00001b50| 09 09 69 66 20 28 74 61 | 62 57 69 64 74 68 20 3e |..if (ta|bWidth >|
|00001b60| 20 2a 74 65 78 74 57 69 | 64 74 68 29 0d 09 09 09 | *textWi|dth)....|
|00001b70| 7b 0d 09 09 09 09 62 72 | 65 61 6b 43 6f 64 65 20 |{.....br|eakCode |
|00001b80| 3d 20 73 6d 42 72 65 61 | 6b 57 6f 72 64 3b 0d 09 |= smBrea|kWord;..|
|00001b90| 09 09 09 2a 74 65 78 74 | 4f 66 66 73 65 74 20 3d |...*text|Offset =|
|00001ba0| 20 69 69 20 2b 20 31 3b | 0d 09 09 09 09 62 72 65 | ii + 1;|.....bre|
|00001bb0| 61 6b 3b 0d 09 09 09 7d | 0d 09 09 09 65 6c 73 65 |ak;....}|....else|
|00001bc0| 0d 09 09 09 7b 0d 09 09 | 09 09 2a 74 65 78 74 57 |....{...|..*textW|
|00001bd0| 69 64 74 68 20 2d 3d 20 | 74 61 62 57 69 64 74 68 |idth -= |tabWidth|
|00001be0| 3b 0d 09 09 09 7d 0d 09 | 09 7d 0d 09 7d 20 2f 2a |;....}..|.}..} /*|
|00001bf0| 20 66 6f 72 20 2a 2f 0d | 0d 09 2f 2a 20 64 6f 20 | for */.|../* do |
|00001c00| 6c 61 73 74 20 73 75 62 | 2d 73 65 67 6d 65 6e 74 |last sub|-segment|
|00001c10| 20 2a 2f 0d 09 69 66 20 | 28 28 69 69 20 2d 20 62 | */..if |((ii - b|
|00001c20| 65 67 69 6e 43 68 61 72 | 20 3e 3d 20 30 29 20 26 |eginChar| >= 0) &|
|00001c30| 26 20 28 62 72 65 61 6b | 43 6f 64 65 20 3d 3d 20 |& (break|Code == |
|00001c40| 73 6d 42 72 65 61 6b 4f | 76 65 72 66 6c 6f 77 29 |smBreakO|verflow)|
|00001c50| 29 0d 09 7b 0d 09 09 62 | 72 65 61 6b 43 6f 64 65 |)..{...b|reakCode|
|00001c60| 20 3d 20 53 74 79 6c 65 | 64 4c 69 6e 65 42 72 65 | = Style|dLineBre|
|00001c70| 61 6b 28 70 54 65 78 74 | 2c 20 74 65 78 74 4c 65 |ak(pText|, textLe|
|00001c80| 6e 67 74 68 2c 20 62 65 | 67 69 6e 43 68 61 72 2c |ngth, be|ginChar,|
|00001c90| 20 69 69 2c 20 30 2c 20 | 74 65 78 74 57 69 64 74 | ii, 0, |textWidt|
|00001ca0| 68 2c 20 74 65 78 74 4f | 66 66 73 65 74 29 3b 0d |h, textO|ffset);.|
|00001cb0| 09 7d 0d 0d 09 72 65 74 | 75 72 6e 20 62 72 65 61 |.}...ret|urn brea|
|00001cc0| 6b 43 6f 64 65 3b 0d 7d | 0d 00 00 00 00 00 00 00 |kCode;.}|........|
|00001cd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ce0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d00| 00 00 01 00 00 00 01 00 | 00 00 00 00 00 00 00 1e |........|........|
|00001d10| 00 00 2a 2a 2a 54 54 54 | ec 00 00 2a 2a 2a 2a ec |..***TTT|...****.|
|00001d20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d30| 0c 57 45 54 61 62 48 6f | 6f 6b 73 2e 63 65 72 73 |.WETabHo|oks.cers|
|00001d40| 20 44 42 6c 65 72 73 2e | 32 70 65 72 6f 6d 6c 6d | DBlers.|2peromlm|
|00001d50| 02 00 54 45 58 54 43 57 | 49 45 01 00 00 00 00 00 |..TEXTCW|IE......|
|00001d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d70| 00 00 ac bc 1a a1 00 00 | 18 c4 00 00 01 9a ec 00 |........|........|
|00001d80| 00 00 00 00 00 00 00 00 | 00 00 2a 2a 54 54 54 54 |........|..**TTTT|
|00001d90| 54 54 54 54 54 54 54 54 | 54 54 54 54 54 54 54 54 |TTTTTTTT|TTTTTTTT|
|00001da0| ec 00 2a ec 00 00 00 00 | 00 2a 54 54 54 54 54 54 |..*.....|.*TTTTTT|
|00001db0| 54 54 54 54 54 54 54 54 | 54 54 54 54 54 54 54 54 |TTTTTTTT|TTTTTTTT|
|00001dc0| 54 2a 2a ec 00 00 00 00 | 2a 54 54 54 54 54 54 54 |T**.....|*TTTTTTT|
|00001dd0| 54 54 54 54 54 54 54 54 | 54 54 54 54 54 54 54 54 |TTTTTTTT|TTTTTTTT|
|00001de0| 54 54 ec 00 00 00 00 00 | 00 ec 54 54 54 54 54 54 |TT......|..TTTTTT|
|00001df0| 54 ff ff ff ff ff 54 54 | 54 54 54 54 54 54 54 54 |T.....TT|TTTTTTTT|
|00001e00| 00 00 01 00 00 00 01 00 | 00 00 00 00 00 00 00 1e |........|........|
|00001e10| 07 9f d0 a4 03 42 00 00 | 00 1c 00 1e ff ff 00 00 |.....B..|........|
|00001e20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+